According to the wide use of network terminals such as personal computers (PCs), cellular phones, and smartphones, and personal digital assistances (PDA), the amount of data processed by a computer (server) providing various services increases, and an increase in the processing speed has been requested. Accordingly, not only by achieving the improvement of the performance of the server but also by using a plurality of servers, high speed, high reliability, and high operability of the entire processing system are realized. In order to realize a system using more servers, data centers have been built in which a plurality of racks each having a plurality of servers mounted thereon are installed together.
In such a data center, there are cases where several thousands of servers are managed per operator, and accordingly, it is desired to perform server management easily and efficiently. Thus, in the data center, a keyboard/video/mouse (KVM) switch that enables the operation of a plurality of servers using one set of console including a display, a keyboard (KB), and a mouse is used.
As KVM switches, there are an analog KVM switch that can be used only for a local connection and a digital KVM switch that can be used for managing servers also by a remote computer through a network, and any one thereof is used.
As an analog KVM switch that can perform universal serial bus (USB) emulation for a plurality of servers connected thereto, for example, a switch 100 as illustrated in FIG. 15 has been proposed (see JP 2006-127252 A). FIG. 15 is a block diagram that illustrates a general configuration example of an analog KVM switch 100 capable of USB emulation. As illustrated in FIG. 15, the analog KVM switch 100 is arranged between a local console 200 and a plurality of (32 in the figure) servers 300 and operates and manages the plurality of servers 300. The local console 200 includes a local monitor 210, a USB keyboard 220, and a USB mouse 230.
The analog KVM switch 100 includes: interface connectors 101; server ports 102; a micro processing unit (MPU) 110; a local keyboard/mouse control unit 120; video port control units 130; USB port control units 140; and an on-screen display (OSD) control unit 150.
Three interface connectors 101 are provided in the example illustrated in FIG. 15, and the local monitor 210, the USB keyboard 220, and the USB mouse 230 of the local console 200 are connected to each interface connector 101. Then, the local monitor 210 is connected to the MPU 110 and the OSD control unit 150 through the interface connector 101. In addition, the USB keyboard 220 and the USB mouse 230 are connected to the local keyboard/mouse control unit 120 through the interface connectors 101.
In the example illustrated in FIG. 15, 32 server ports 102 are provided, and each server port 102 is connected to the server 300. Each server 300 is connected to the video port control unit 130 and the USB port control unit 140 corresponding to each server 300 through the server port 102 corresponding thereto. Between each server 300 and each video port control unit 130, an analog video signal is exchanged through a video interface of the server port 102 corresponding thereto. In addition, between each server 300 and each USB port control unit 140, a USB signal is exchanged through the USB interface of the server port 102 corresponding thereto.
The MPU 110 is in charge of following various functions (a1) to (a4) of the analog KVM switch 100.
(a1) a function for transmitting an analog video signal transmitted from the video port control unit 130 of the server port 102 selected by the MPU 110 to the local monitor 210 so as to be output.
(a2) a function for transmitting data and a command of the server 300 side that are received by the USB port control unit 140 of the server port 102 selected by the MPU 110 to the local keyboard/mouse control unit 120.
(a3) a function for transmitting input data input from the USB keyboard 220 and the USB mouse 230 that is received by the local keyboard/mouse control unit 120 to the USB port control unit 140 of the server port 102 selected by the MPU 110.
(a4) a function for starting the OSD control unit 150 and transiting to the OSD mode when a specific key sequence (for example, Ctrl key+Ctrl key or Alt key+Alt key) used for performing setting, operating, state display, and the like of the KVM switch 100 is received.
The local keyboard/mouse control unit 120 performs emulation as the USB port of the server 300 and performs an enumeration process (device recognizing process) of the keyboard 220 and the mouse 230, a reception process of input data input from the keyboard 220 and the mouse 230, a command issuance process for issuing a command from the server 300, and the like.
The video port control unit 130 sets a video signal at one server port 102 selected by the MPU 110, which is transmitted from the server 300 side, to be in an enable state and sets video signals at the other server ports 102, which are transmitted from the server 300 side, to be in a disable state. In addition, the video port control unit 130 emulates extended display identification data (EDID) information of a local monitor 210 for the server 300.
The USB port control unit 140 emulates the local console 200 as a USB device and performs a response of the enumeration process that is transmitted from the server 300, the reception process of a command transmitted from for the server 300, the process of transmitting input data to the server 300, and the like.
When the OSD control unit 150 is started by the MPU 110 and transits to the OSD mode, the OSD control unit 150 displays a user interface used for operating the KVM switch 100 on the local monitor 210. The setting of the KVM switch 100, display of the state, the selection of the server port 102, and the like are performed by using the user interface.
In the analog KVM switch 100 configured as described above, at normal time, as denoted by arrows A1 to A6 illustrated in FIG. 16, the server port 102 (server port #1 illustrated in FIG. 16) selected by the MPU 110 and the local port (interface connector) 101 are connected together through the MPU 110. In addition, at the server ports 102 (server ports #2 to #32 illustrated in FIG. 16) that have not been selected, as denoted by arrows A7 and A8 illustrated in FIG. 16, the emulation of the local port 101 is performed by the video port control unit 130 and the USB port control unit 140.
FIG. 16 is a diagram that illustrates the flows of video signals and input data of the analog KVM switch 100, which is illustrated in FIG. 15, at normal time. In FIG. 16, arrows A4 to A6 denote the flow of a video signal from the server 300 connected to the selected server port 102. In addition, arrows A1 to A3 denote the flow of input data input to the server 300 connected to the selected server port 102. Furthermore, arrow A7 denotes the flow of a video signal from the server 300 connected to the server port 102 that has not been selected to the video port control unit 130, and arrow A8 denotes the flow of data exchanged between the server 300 connected to the server port 102 that has not been selected and the USB port control unit 140.
When the analog KVM switch 100 configured as described above transits to the OSD mode, as denoted by arrow A9 illustrated in FIG. 17, an OSD menu screen is displayed on the local monitor 210 by the OSD control unit 150. At this time, input data input from the USB keyboard 220 and the USB mouse 230 is not transmitted to the USB port control unit 140 of the server port 102 that has been selected by the MPU 110. FIG. 17 is a diagram that illustrates the flow of video signals and input data when the analog KVM switch 100 illustrated in FIG. 15 transits to the OSD mode. In FIG. 17, arrow A9 denotes the flow of an OSD screen signal from the OSD control unit 150 to the local monitor 210.
In a case where the above-described analog KVM switch 100 is used, one server 300 selected from one local console 200 through the MPU 110 can be operated from the local console 200. However, the KVM switch 100 does not have any means for simultaneously transmitting input data input from the local console 200 (the USB keyboard 220 and the USB mouse 230) to a plurality of server ports 102 and thus is not able to simultaneously operate a plurality of servers 300.
In addition, generally, the states of the servers 300 connected to the KVM switch 100 are not synchronized with each other, and accordingly, even when the input data input from the local console 200 can be simultaneously transmitted to a plurality of servers 300, the same operation result (the same video signal or the like) is not able to be acquired. Accordingly, it is desired for the operator to select one server port 102 from among a plurality of server ports 102 and perform an operation of the server 300 one by one by using the local console 200 while checking the screen supplied from the server 300 connected to the selected server port 102.
Meanwhile, in an information processing system, while there is a scheme for automatically performing update of an operating system (OS), an application, a device driver, and the like installed to the server, such update is not able to be automatically performed in a server before the installation of the OS or the start-up of the OS.
Thus, a technology for enabling a customized operation according to a client request for a plurality of apparatuses to be performed in a simultaneous and parallel manner even before the installation of an OS has been proposed as well (see JP 2012-230709 A). According to the technology, a script file in which key operation information is described in advance is analyzed, and the key operation information can be simultaneously delivered to a plurality of apparatuses connected to a delivery apparatus.
However, according to the technology, it is desired to describe the key operation information in the script file in advance, and a keyboard or a mouse is not able to be operated in real time while the screen is checked. In addition, only the same key operation can be transmitted to a plurality of apparatuses, but it is not able to be performed to group a plurality of apparatuses and deliver key operation information that is different for each group.
As described above, in the KVM switch 100 illustrated in FIG. 15, a plurality of servers 300 are not able to be simultaneously performed through one local console 200. Accordingly, even in a case where the same operation (for example, update of a basic input/output system (BIOS) or firmware (FW)) or an almost same operation (for example, the installation of an OS or an application) is performed for a plurality of servers 300, it is desired to select and switch one server 300 each time and then perform an operation for the server 300. Therefore, for example, even in a case where, during a processing standby time of a server 300, switching to another server 300 is made in accordance with a switching operation system illustrated in FIG. 18, and an operation for the another server 300 is performed, it takes an enormous amount of time to complete the operations for all the servers 300.
FIG. 18 is a diagram that illustrates an example of a switching operation system using the analog KVM switch 100 illustrated in FIG. 15. In the example illustrated in FIG. 18, when a first server is operated so as to perform a start-up process and is in a process standby state, thereafter, the same operation is sequentially performed for the second to the n-th servers. Then, when the same operation is performed for the n-th server, and the server is in the process standby state, the process is switched to the first server, and the process of ending the first server is performed. Thereafter, similarly, process of ending the second to n-th servers is sequentially performed.
In addition, as described above, according to the technology enabling the execution of a customization operation in a simultaneous and parallel manner, the key operation information needs to be described in a script file, and neither a keyboard operation nor a mouse operation can be performed in real time while the screen is checked. Accordingly, additional man-hour is required for preparing and verifying the script file, and, when the content of the key operation is changed, not only another script file needs to be prepared, but also another script file needs to be generated due to a slight change in the key operation timing. Furthermore, since it is not able to be performed to group a plurality of apparatuses and transmit key operation information that is different for each group, apparatuses having mutually-different contents of the key operation cannot be simultaneously connected, and, in order to change the content of the key operation, the script file and the apparatus need to be replaced.